1. Field of the Invention
The present invention generally relates to a role-based computer system that triggers computer application services, and more particularly, relates to a method, computer program product and system for adjusting the roles in a continuously changing business environment.
2. Description of the Prior Art
FIG. 1 illustrates a simplified diagram of computers 1 to N that are interconnected by local area networks (LAN) or wide area networks (WAN), or other computer networks known in the art. A computer user identifies himself or herself to a so-called role system (e.g., on computer 3) via a human interface, such as a display screen with a keyboard as input device or the like (e.g., on computers 1-2) and uses some or all of applications services (“AS”, e.g., on computers 4-6).
Such computer based systems are used and of vital importance in almost all organizations such as, for example, manufacturing facilities, travel agencies, call centers, financial institutions, business organizations, etc.
In each organization, groups of users with similar responsibilities share application services that are part of business applications and used in business processes, whereas other groups of users with other predefined responsibilities require other application services of other business applications that are used in the same or other business processes. Business applications providing the application services (AS) are hosted, for example, on dedicated computers 4 to 6. The role system hosted on computer 3, provides predefined representations of these application services to the user (not shown in FIG. 1). The predefined representations are assigned to roles (e.g., 10, 11, 12). The application services belonging to a specific role are displayed to the user by a human interface (e.g., on the display devices of front end computers 1, 2, . . . , N), for example, by graphical symbols like icons. The application services AS that are assigned to different roles are complementary in a way that these roles all together cover all application services that need to be performed in a specific business process.
In other words, roles link users and business processes. For example, a purchasing agent gets access to all application services that he or she needs within the order fulfillment process, such as, checking supplier prices for a certain product over the internet and executing a purchasing transaction for that specific product. In parallel the purchasing agent might be involved in a new product development process, where new suppliers have to be identified for new parts and prices have to be negotiated for these new parts. All required applications services to support these business processes can be conveniently accessed by the user, who gets assigned to the role of a purchasing agent.
It is an advantage that within a role the total number of application services that are available in the connected application systems are not displayed. Rather roles only display application services that are required by a specific user. Thereby, roles help hiding the complexity of the overall system landscape from the user. This improves the usability of the human interface for the user.
However, application services constantly change; it is in the discretion of the organization to remove, add or otherwise modify the application services, for example, when business processes within the organization change, or when application services are updated (e.g., by a new release of an application system). This becomes especially important for managing organizational knowledge, as this knowledge gains more and more relevance in the execution of business processes. That is, document services that provide this knowledge are sometimes changed daily in periods of organizational change.
Further, the users of these application services change too: people join or leave the organization, get promoted or shift responsibilities within the organization. When people are replaced, the roles remain the same, but when people enhance their skill set through training, then their roles need to be adjusted.
Still further, the selection of services that are available to a single user at all must comply with predefined rules and criteria. For example, a user must be prevented from accessing conflicting services, specific users must have access to mutually dependent services.
Therefore, the role system (also “role repository”) constantly requires an adjustment of its role definitions. This makes the management of role system difficult and requires a lot of manual role administration work. For example, a role administrator has to modify each role manually. Often a small change in a business process has impact on many different roles. The administrator, further, has to control the role consistency across all roles, whenever role upgrades are implemented or when roles change for other reasons, as explained before. This can affect hundreds of roles where the administrator needs to compare the changes with the predefined rules and criteria for avoiding conflicting services within a role.